/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package org.rm.controladores;

import org.rm.entidades.Partida;
import org.rm.entidades.jpa.PartidaJpaController;
import org.rm.entidades.jpa.exceptions.NonexistentEntityException;

/**
 * Clase para gestionar las partidas
 * @author ffbeltran
 */
public class ControladorPartida {

    /**
     * Método para crear una nueva partida. Recupera el nombre introducido por
     * el usuario ({@link #getNombrePartida() }), crea un nuevo objeto
     * {@link Partida} y llama a {@link PartidaJpaController#create(org.rm.entidades.Partida) }
     * con la nueva instancia creada. A continuación modifica el mapa de partidas
     * de {@code form}
     * @return la cadena 'partidas'
     * @see FormularioBean#getMapaPartidas()
     */
    public Partida nuevaPartida(String nombrePartida) {
        Partida nuevaPartida = new Partida();
        nuevaPartida.setNombre(nombrePartida);
        PartidaJpaController.create(nuevaPartida);
        return nuevaPartida;
    }

    /**
     * Método para modificar una partida. Debe recibir un parámetro 'id' que
     * indica el identificador de la partida que se modifica. Recupera el
     * objeto partida a través del método {@link FormularioBean#getPartida(java.lang.Integer) }
     * de su instancia {@code form}. A continuación llama a
     * {@link PartidaJpaController#edit(org.rm.entidades.Partida) } con la instancia
     * recuperada.
     * @return la cadena 'partidas'
     */
    public void modificaPartida(Partida p) {
        if (p != null) {
            try {
                PartidaJpaController.edit(p);
            } catch (NonexistentEntityException ex) {
                ex.printStackTrace();
            } catch (Exception ex) {
                ex.printStackTrace();
            }
        }
    }
    
}
